package com.mfcxy.mapper;

import java.util.List;
import java.util.Map;

import com.mfcxy.entity.User;

/**
 * user mapper 对象
 * @author mfcxy
 *
 */
public interface IUserMapper {
	/**
	 *   新增管理员
	 * @param user
	 * @return
	 */
	public int save(User user);
	
	/**
	 * 查询管理员
	 * @param  mapparam map參數
	 * @return
	 */
	public List<User> selectList(Map<String, Object> mapparam);
	
	/**
	 * 查询总记录数
	 * @return
	 */
	public int getCount();
	
	
	/**
	 * 根據用戶名搜索
	 * @param mapparam 
	 * @return
	 */
	public List<User> searchList(Map<String, Object> mapparam);
	
	/**
	 * 根据条件查询总数
	 * @param mapparam
	 * @return
	 */
	public int getCountWhere(Map<String, Object> mapparam);
	
	/**
	 * 根据id删除管理员
	 * @param id
	 * @return
	 */
	public int delById(int id);
	
	/**
	 * 批量删除管理员根据id
	 * @param list
	 * @return
	 */
	public int delsByIds(List<String> list);
	
	/**
	 * 根据用户名查询用户
	 * @param username
	 * @return
	 */
	public User findUserByUseerName(String username);
	
	/**
	 * 根据id查询用户
	 * @param id
	 * @return
	 */
	public User findUserById(int id);
	
	/**
	 *  根据用户名查询用户，并且排除当前用户
	 * @param map
	 * @return
	 */
	public User checkUserName(Map<String, Object> map);
	
	/**
	 * 更新用户信息
	 * @param user
	 * @return
	 */
	public int updateUserById(User user);
	
	/**
	 * 重置密码
	 * @param map
	 * @return
	 */
	public int restpw(Map<String, Object> map);
	
	
	/**
	 * 根据用户id 查询拥有权限
	 * @param uid
	 * @return
	 */
	public List<Map<String , Object>> selectUserPermissions(int uid);
	
	
	
}
